package com.api.entity;


import com.api.log.FieldAnnotation;
import com.mybatisflex.annotation.Column;
import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.KeyType;
import com.mybatisflex.annotation.Table;
import com.mybatisflex.core.activerecord.Model;


import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
* 消息与短信模版 实体类。
*
* @author yangsf
* @since 2024-10-22
*/
@Accessors(chain = true)
@Data(staticConstructor = "create")
@EqualsAndHashCode(callSuper = true)
@Table("tb_msg_template")
public class MsgTemplate extends Model<MsgTemplate> {

private static final long serialVersionUID = 1L;

    @Id(keyType = KeyType.Auto)
    @FieldAnnotation("id")
    private Long id;

    /**
    * 类型
    */
    @FieldAnnotation("类型")
    private Integer kind;

    /**
    * 发送类型：1.站内信2.短信3.站内信和短信
    */
    @FieldAnnotation("发送类型：1.站内信2.短信3.站内信和短信")
    private Integer sendType;

    /**
    * 消息标题
    */
    @FieldAnnotation("消息标题")
    private String title;

    /**
    * 消息内容
    */
    @FieldAnnotation("消息内容")
    private String content;

    /**
    * 变量数
    */
    @FieldAnnotation("变量数")
    private Integer variableCount;

    /**
    * 状态：1.正常0.作废
    */
    @FieldAnnotation("状态：1.正常0.作废")
    private Integer status;

    /**
    * 创建人ID
    */
    @FieldAnnotation("创建人ID")
    private Long createId;

    /**
    * 第三方短信平台：1.阿里云 2.腾讯云 3.unicloud
    */
    @FieldAnnotation("第三方短信平台：1.阿里云 2.腾讯云 3.unicloud")
    private Integer smsType;

    /**
    * 第三方短信模版ID
    */
    @FieldAnnotation("第三方短信模版ID")
    private String smsTemplateId;

    /**
    * 跳转的单据类型：1.资质认证 2.车辆详情页 3.会员收费款 4.车主收费款 5.车辆详情页-竞价 6.我购买的列表 7.我的卖出列表 8.提车确认 9.上传过户资料 10.资金变动明细
    */
    @FieldAnnotation("跳转的单据类型：1.资质认证 2.车辆详情页 3.会员收费款 4.车主收费款 5.车辆详情页-竞价 6.我购买的列表 7.我的卖出列表 8.提车确认 9.上传过户资料 10.资金变动明细")
    private Integer toPageType;

    @Column(value = "电话",ignore = true)
    private String tele;

    @Column(value = "参数1",ignore = true)
    private String param1;

    @Column(value = "参数2",ignore = true)
    private String param2;

    @Column(value = "参数3",ignore = true)
    private String param3;
}
